<test>
    <settings>
        <max_insert_threads>8</max_insert_threads>
        <optimize_use_projections>0</optimize_use_projections>
    </settings>

    <create_query>
        CREATE TABLE a
        (
            d Date,
            os String,
            n UInt64
        )
        ENGINE = MergeTree
        PARTITION BY d
        ORDER BY (d, n)
    </create_query>

    <fill_query>insert into a select '2000-01-01', ['aa','bb','cc','dd'][number % 4 + 1], number from numbers_mt(10000000)</fill_query>
    <fill_query>insert into a select '2000-01-02', ['aa','bb','cc','dd'][number % 4 + 1], number from numbers_mt(10000000)</fill_query>
    <fill_query>insert into a select '2000-01-03', ['aa','bb','cc','dd'][number % 4 + 1], number from numbers_mt(10000000)</fill_query>
    <fill_query>insert into a select '2000-01-04', ['aa','bb','cc','dd'][number % 4 + 1], number from numbers_mt(10000000)</fill_query>

    <fill_query>OPTIMIZE TABLE a FINAL</fill_query>

    <query>select d, count() from a group by d</query>
    <query>select os, count() from a group by os</query>
    <query>select d, os, count() from a group by d, os</query>

    <drop_query>drop table if exists a</drop_query>
</test>
